package com.javaee.demov2.persistent.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Date;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName(value = "tickets")
public class Ticket {
    /**
     * 票据id，主键id
     */
    @TableId(type = IdType.AUTO)
    private Long ticketId;

    private String ticketNumber; // 票据编号，通常具有唯一性，用于标识该票据
    private String issuer; // 票据开具方（例如某个公司、机构等）
    private String receiver; // 票据接收方（对应的业务往来对象）
    private LocalDateTime issueTime; // 票据开具时间
    private BigDecimal amount; // 票据金额（如果涉及费用相关的票据）
    private String description; // 票据的简要描述，说明票据用途等信息
    private Integer status; // 票据状态，例如0表示未处理，1表示已核销，2表示已作废等，可根据业务需求定义不同状态码及含义
    private String type; // 票据类型，比如发票、收据、提单等，根据实际业务场景分类
    private Date createdTime; //创建时间
    private Date updatedTime; //更新时间
}